DEFINE OBJECTS 1
DEFINE OBJECT SANNY BUILDER 3.2.2     

DEFINE MISSIONS 0

//-------------MAIN---------------
thread 'MAIN' 
fade 0 0 
set_max_wanted_level_to 0 
set_wb_check_to 0 
set_current_time 12 0 
$PLAYER_CHAR = Player.Create(#NULL, 0.0, 0.0, 10.0)
$PLAYER_ACTOR = Actor.EmulateFromPlayer($PLAYER_CHAR)
set_weather 0 
wait 0 
0180: set_on_mission_flag_to $ONMISSION 
if 
   not Actor.Dead($PLAYER_ACTOR)
else_goto @MAIN_2 
0352: set_actor $PLAYER_ACTOR skin_to 'PLAYER' 
load_requested_models 
0353: refresh_actor $PLAYER_ACTOR 

:MAIN_2
if 
   Player.Defined($PLAYER_CHAR)
else_goto @MAIN_3 
Player.CanMove($PLAYER_CHAR) = False
create_thread @MENU 

:MAIN_3 
//(EN)It's important to loop this thread
//(RU)   
wait 0 
jump @MAIN_3 

:MENU
//(EN)Here's menu script starts
//(RU)   
thread 'MENU' 
01B7: release_weather
select_interior 0
04D8: set_actor $PLAYER_ACTOR drown 0 
01EB: set_traffic_density_multiplier_to 0.0 
set_ped_density 0.0 
03BF: set_player $PLAYER_CHAR ignored_by_everyone_to 1 
01F7: set_player $PLAYER_CHAR ignored_by_cops_state_to 1 
Player.InfiniteRun($PLAYER_CHAR) = True
03AD: set_rubbish 0 
load_special_actor 1 'dance' 
//
//(EN)Cutscene Quick Tutorial:
// WARNING! It is necessary to load ALL Cutscene Actors and Objects EVEN you don't want to use all of them later 
// Model name must be coincide with the animation name in IFP
// If you load actor at numbers 1-11 so he will have dynamic shadow, if 12-21 - will not have shadow.
//
//(RU)   :
// !      (IFP),        . 
//         IFP
//      1-11,     ,  12-21 -  
//
Model.Load(#SANCHEZ)
//(EN)You need to load any vehicle in menu for correct loading new game later
//(RU)            
load_requested_models  

:MENU_2
wait 0 
if and
023D:   special_actor 1 loaded
   Model.Available(#SANCHEZ)
else_goto @MENU_2 
0249: release_model #SANCHEZ
04E4: unknown_refresh_game_renderer_at 0.0 0.0
set_player_coordinates $PLAYER_CHAR 0.0 0.0 10.0 
03CB: load_scene 0.0 0.0 10.0 // quickly load scene at this coords
Camera.SetPosition(2.0, 0.0, 6.0, 0.0, 0.0, 0.0)
Camera.PointAt(0.0, 0.0, 6.0, 2)
set_camera_near_clip 0.1 
02E4: load_cutscene_data 'csdance' //(EN)Load cutscene named "csdance"(name of the ifp and dat files in cuts.img).
0244: set_cutscene_pos 0.0 0.0 5.0 //(EN)Center of cutscene
02E5: 0@ = create_cutscene_object #SPECIAL01 //(EN)Creating new cutscene object(actor). Also here creates dynamic shadow if object has bones.
04BC: (unknown) 'dance' //(EN)Infinity cutscene animation replay
02E6: set_cutscene_anim 0@ 'dance' //(EN)Set cutscene animation for cutscene object(actor)
02E7: start_cutscene
wait 0 
02A3: enable_widescreen 0
0460: set_camera_pointing_time 0.0 20000 
Camera.SetPosition(10.0, 0.0, 8.0, 0.0, 0.0, 0.0)
Camera.PointAt(0.0, 0.0, 6.0, 1)
fade 1 2000 
end_thread